import type { ChangeType } from '@/api/athlete/change/types'

/**
 * 变更历史记录类型（基于后端返回数据）
 */
export interface ChangeHistoryRecord {
	id: number | string // 主键ID
	infoId: number // 运动员ID
	createBy?: string // 创建人
	createTime?: string // 创建时间
	updateBy?: string // 更新人
	updateTime?: string // 更新时间
	isDeleted?: 0 | 1 // 删除标记
	changeType: ChangeType // 变更类型：1=单位变更，2=项目变更
	changeBefore: number // 变更前ID（单位ID或项目ID）
	changeAfter: number // 变更后ID（单位ID或项目ID）
	changeYear: number // 变更年度
	approvalStatus?: number // 审批状态
	auditStatus?: number // 审核状态
	auditAdvice?: string // 审核意见
	auditTime?: string // 审核时间
	auditor?: string // 审核员

	// 转换后的显示字段
	changeTypeLabel?: string // 变更类别标签
	changeTime?: string // 变更时间（显示用）
	beforeInfo?: string // 变更前信息（显示用）
	afterInfo?: string // 变更后信息（显示用）
}

/**
 * 字典项接口
 */
export interface DictOption {
	label: string
	value: number | string
}

/**
 * 变更历史组件Props
 */
export interface ChangeHistoryProps {
	athleteId: string | number | undefined
	data?: ChangeHistoryRecord[] // 变更历史数据
	readonly?: boolean // 是否只读（默认true，因为只展示）
}
